#include "linkLoopList.h"
#include "Joseph.h"
void test01() {
    LinkLoopList table;
    // 静态初始化
    initLinkLoopList(&table);

    for (int i = 0; i < 5; ++i) {
        // insertLinkLoopHeader(&table, i + 100);
        insertLinkLoopRear(&table, i + 100);
    }
    showLinkLoopList(&table);
    printf("num: %d\n", table.num);
    releaseLoopList(&table);
    showLinkLoopList(&table);
    printf("num: %d\n", table.num);
}

/* 当n=5，k=2时，被杀者的顺序编号为2, 4, 1, 5，最后的幸存者是3。
 * 当n=10，k=3时，被杀者的顺序编号为3, 6, 9, 2, 7, 1, 8, 5, 10，最后的幸存者是4。
 * 当n=7，k=2时，被杀者的顺序编号为2, 4, 6, 1, 5, 3，最后的幸存者是7。
 * 当n=10，k=17时，最后的幸存者是3。
 * */
void test02() {
    JosephHeader game1 = {NULL, NULL};
    initJosephGame(&game1, 10);
    showData(&game1);
    printf("start Game:\n");
    startJosephGame(&game1, 3);
}

int main() {
    //test01();
    test02();
    return 0;
}
